/* 基础样式 */
.ol-custom-popup {
  --bg: rgba(25, 82, 78, 0.8);
  --arrowSize: 10px;

  position: relative;
  z-index: 100;
  min-width: 120px;
  color: #fff;
  padding: 5px;
  background-color: var(--bg);
  border: none;
  border-radius: 4px;
  line-height: 1;
  font-size: 12px;
  text-align: start;
  box-sizing: border-box;
  user-select: none;
}

.ol-custom-popup-close {
  position: absolute;
  top: 0;
  right: 5px;
  z-index: 1000;
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
}

.ol-custom-popup::after {
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-width: var(--arrowSize);
}

.ol-custom-popup.top::after {
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-top-color: var(--bg) !important;
}

.ol-custom-popup.bottom::after {
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-bottom-color: var(--bg) !important;
}

.ol-custom-popup.left::after {
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  border-left-color: var(--bg) !important;
}

.ol-custom-popup.right::after {
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border-right-color: var(--bg) !important;
}
